昨天提到了介面(Interfaces)
今天則是要來談談功能性介面(Functional interfaces)
什麼是功能性介面呢?
功能性介面就是只包含一個抽象方法的介面
我們可以將其稱為單一抽象方法(Single Abstract Method,縮寫SAM)
fun interface KRunnable {
fun invoke()
}
SAM轉換
fun interface IntPredicate {
fun accept(i: Int): Boolean
}
val isEven = object : IntPredicate {
override fun accept(i: Int): Boolean {
return i % 2 == 0
}
}